package org.tgcloud.group.web.controller.dto.home;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;

/**
 * @author: zhy
 * @create: 2023-10-24 16:06
 * @description:
 */
@Data
@ApiModel
public class HomeProjectMsg {

    @ApiModelProperty("项目id")
    private Integer projectId;

    @ApiModelProperty("签单时间")
    private Date signTime;

    @ApiModelProperty("合同编号")
    private String orderNo;

    @ApiModelProperty("客户公司名称")
    private String projectName;

    @ApiModelProperty("项目名称")
    private String brands;

    @ApiModelProperty("区域")
    private String area;

    @ApiModelProperty("商务")
    private String businessName;

    @ApiModelProperty("开票公司")
    private String invoiceCompany;

    @ApiModelProperty("开票额")
    private BigDecimal invoicePrice;

    @ApiModelProperty("项目状态")
    private Short status;

    @ApiModelProperty("客户货值")//单独统计
    private BigDecimal totalPrice;

    @ApiModelProperty("实际货值")//单独统计
    private BigDecimal actualValuePrice;

    @ApiModelProperty("内部货值")
    private BigDecimal innerPrice;

    @ApiModelProperty("核价卖货应收")
    private BigDecimal checkSalePrice;

    @ApiModelProperty("竞价卖货应收")
    private BigDecimal biddingSalePrice;

//    @ApiModelProperty("卖货应收")
//    private BigDecimal salePrice;

    @ApiModelProperty("卖货实收")
    private BigDecimal saleRealPrice;

    @ApiModelProperty("预估成本")//合计
    private BigDecimal estimatedCost;

    @ApiModelProperty("实际成本")//合计
    private BigDecimal actualCost;

    @ApiModelProperty("项目成本")//合计
    private BigDecimal projectCost;

    @ApiModelProperty("项目收入")
    private BigDecimal projectPrice;

    @ApiModelProperty("出货货值")
    private BigDecimal projectOutGoodPrice;

    @ApiModelProperty("出货进度:出货货值/客户货值")
    private BigDecimal projectOutGoodRate;

    @ApiModelProperty("出货部分成本:预估成本*出货进度")
    private BigDecimal projectOutGoodSomeRate;

    @ApiModelProperty("出货备注")
    private String projectOutGoodRemark;

    @ApiModelProperty("出货倍数:卖货收入/出货成本")
    private BigDecimal projectOutGoodTimes;

    @ApiModelProperty("去盲盒收入")
    private BigDecimal projectNoBiddingPrice;

    @ApiModelProperty("去盲盒毛利")
    private BigDecimal projectNoBiddingRateGross;

    @ApiModelProperty("盲盒货值")//单独统计
    private BigDecimal blindBoxTotalPrice;

    @ApiModelProperty("盲盒收入")
    private BigDecimal blindBoxPrice;

    @ApiModelProperty("盲盒利润：盲盒应收-预估成本")
    private BigDecimal blindBoxRate;

    @ApiModelProperty("成本占比（预计成本/客户货值）(%)")
    private BigDecimal costRate;

    @ApiModelProperty("毛利:项目收入-预估成本")
    private BigDecimal projectRate;

    @ApiModelProperty("毛利率(%)：毛利/项目收入")
    private BigDecimal projectRateGross;

    @ApiModelProperty("到货状态")
    private String arrivalProgress;

    @ApiModelProperty("到货进度")
    private String goodArrivalStatus;

    @ApiModelProperty("到货日期")
    private String arrivalTime;

    @ApiModelProperty("项目备注")
    private String projectRemark;

    @ApiModelProperty("品类id集合")
    private String cateIds;

    @ApiModelProperty("品类名称集合")
    private String cateNames;

    @ApiModelProperty("本月内部货值")
    private BigDecimal arrivalInnerPrice;

    @ApiModelProperty(value = "本月到货百分比,")
    private BigDecimal arrivalRate;

//    @ApiModelProperty("心动鲤盒收入")
//    private BigDecimal heartBoxPrice;
//
//    @ApiModelProperty("公司自用收入")
//    private BigDecimal ownUsePrice;
//
//    @ApiModelProperty("其他用途收入")
//    private BigDecimal otherPrice;

    @ApiModelProperty("用途收入")
    private Map<Integer, BigDecimal> useToPriceMap;

    /**
     * 预估-自营媒体成本
     */
    @ApiModelProperty(value = "预估-自营媒体成本")
    private BigDecimal estimatedSelfMediaCost;

    /**
     * 预估-外采媒体成本
     */
    @ApiModelProperty(value = "预估-外采媒体成本")
    private BigDecimal estimatedExternalMediaCost;

    /**
     * 实际-自营媒体成本
     */
    @ApiModelProperty(value = "实际-自营媒体成本")
    private BigDecimal actualSelfMediaCost;

    /**
     * 实际-外采媒体成本
     */
    @ApiModelProperty(value = "实际-外采媒体成本")
    private BigDecimal actualExternalMediaCost;

}

//    @ApiModelProperty("到货情况")
//    private String goodArrivalMsg;

//    @ApiModelProperty("项目实收")
//    private BigDecimal projectRealPrice;

//    @ApiModelProperty("出货部分应收")
//    private BigDecimal projectOutGoodSomePrice;





